﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace FlexFlow.Model
{
    /// <summary>
    /// 表示应用程序执行结果封装
    /// </summary>
    public class ApplicationExecuteResult : IFlowableResult
    {
        /// <summary>
        /// 获取该应用程序需要发送的任务集合
        /// </summary>
        public WorkFlowTask[] SendTasks { get; set; }
        /// <summary>
        /// 获取该应用程序接下来的活动ID集合
        /// </summary>
        public Guid[] NextActivityIds { get; set; }
        /// <summary>
        /// 获取该应用程序接下来的活动进入数据
        /// </summary>
        public KeyValuePair<Guid, Object>[] NextActivityEnterData { get; set; }
        /// <summary>
        /// 获取该应用程序的应用程序数据
        /// </summary>
        public Dictionary<string, string> ApplicationData { get; set; }
        /// <summary>
        /// 获取该执行结果的备注
        /// </summary>
        public string Tag { get; set; }


        public ApplicationExecuteResult()
        {
            NextActivityIds = null;
            SendTasks = null;
        }
    }
}
